package pers.course.others;

import java.util.ArrayList;
import java.util.List;

public class PowerSet {
    public static <V> void powerSet(int i, List<V> list, List<V> li) {
        if (i > list.size() - 1) {
            System.out.println(li);
        } else {
            li.add(list.get(i));
            powerSet(i + 1, list, li);
            li.remove(list.get(i));
            powerSet(i + 1, list, li);
        }
    }

    public static void main(String[] args) {
        List<String> list = new ArrayList<String>();
        List<String> li = new ArrayList<String>();
        list.add("A");
        list.add("B");
        list.add("C");
        list.add("D");
        powerSet(0, list, li);
    }
}
